Handling disruption in content streams received at a player from a content retransmitter

ABSTRACT

A player receives encoded content of a first resolution level from a content retransmitter and monitors bandwidth of the communication connection utilized to receive the content. When the bandwidth changes with respect to various threshold values corresponding to various resolution levels, the player signals the content retransmitter to increase or decrease the encoding resolution for future portions. The player also locates related substitute content. When the player signals the content retransmitter to decrease the resolution below a minimum, the player plays the substitute content instead of the received content. Subsequently when the bandwidth is again such that player signals the content retransmitter to increase the resolution to the minimum or above, the player plays the received content instead of the substitute content. In various implementations, the player may obtain substitute content prior to or at the time the player determines to play substitute content.

BACKGROUND Technical Field

This disclosure relates generally to content retransmission, and morespecifically to the handling of disruptions that occur in contentstreams received at a player device from a content retransmitter.

Description of the Related Art BRIEF SUMMARY

The present disclosure discloses systems and methods for handlingdisruption in content streams received at a player device from a contentretransmitter. A player application may receive encoded content having afirst resolution level from a content retransmitter. The playerapplication may monitor the bandwidth of the communication connectionutilized to receive the content. When the bandwidth rises above variousthreshold values corresponding to various resolution levels, the playerapplication may signal the content retransmitter to increase theresolution for encoding future portions. To the contrary, when thebandwidth falls below various other threshold values corresponding tovarious other resolution levels, the player application may signal thecontent retransmitter to decrease the encoding resolution for futureportions. The player application may also locate related substitutecontent. When the player application signals the content retransmitterto decrease the resolution below a minimum threshold resolution level,the player application may play the substitute content instead of thereceived content. Subsequently when the available bandwidth is againsufficient, the player application signals the content retransmitter toincrease the resolution to the minimum threshold resolution level orabove and the player application may play the received content insteadof the substitute content.

In various implementations, the player application may locate and obtainsubstitute content related to the received content prior to determiningto play substitute content. In such implementations, the playerapplication may obtain such substitute content and store it in a storagemedium until it is needed. In other implementations, when the playerapplication determines to play substitute content, the playerapplication may then locate and obtain substitute content to play.

When locating substitute content, the player application may determineone or more characteristics of the received content by any one of:analyzing metadata that is included in the received content; analyzingmetadata that describes the received content; analyzing captioning datafor the received content; performing audio recognition on the receivedcontent; performing image recognition on the received content; and soon. The player application may then locate related substitute content bysearching available content based on the determined characteristicsand/or one or more sets of user preferences regarding searching forsubstitute content.

It is to be understood that both the foregoing general description andthe following detailed description are for purposes of example andexplanation and do not necessarily limit the present disclosure. Theaccompanying drawings, which are incorporated in and constitute a partof the specification, illustrate subject matter of the disclosure.Together, the descriptions and the drawings serve to explain theprinciples of the disclosure.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a system for handling disruptionin one or more content streams received at a player device from acontent retransmitter.

FIGS. 2A and 2B are a flow chart illustrating a method for handlingdisruption in content streams received at a player device from a contentretransmitter. This method may be performed by the system of FIG. 1.

FIGS. 3A-3C illustrate sample display screens that may be displayed bythe system of FIG. 1 while performing the method of FIG. 2.

DETAILED DESCRIPTION

The description that follows includes sample systems, methods, andcomputer program products that embody various elements of the presentdisclosure. However, it should be understood that the describeddisclosure may be practiced in a variety of forms in addition to thosedescribed herein.

Content retransmitters, such as the Slingbox® marketed by Sling Media®,typically receive content such as one or more television programs,movies, and so on; from a content receiver such as a set top box, acable box, a digital video recorder, a digital video disc (DVD) playerand so on; and retransmit or stream the content to an associated playerdevice such as a desktop computing device, a laptop computing device, atablet computer device, a cellular telephone, a personal digitalassistant, and so on. The content received from the content receiver isgenerally obtained by the content receiver from a content provider, suchas a cable television provider, a satellite television provider, anon-demand movie provider, an Internet service provider, DVD distributor,and so on. The owner of the content receiver and content retransmittermay then use a player application (such as the SlingPlayer™ orSlingPlayer Mobile™ applications marketed by Sling Media®) operating onor in conjunction with the associated player device to connect to thecontent retransmitter in order to receive and view the content,essentially enabling viewing of the content remote from the contentreceiver.

The content retransmitter encodes the content before retransmitting suchcontent to the player device. The content is encoded according to anumber of parameters such as resolution, streaming bit rate, frame rate,and so on. As the player device receives the encoded content, itutilizes the player application to decode, render, and/or play thecontent received from the content retransmitter. Further, the contentretransmitter may alter the encoding parameters during transmission atthe direction of the player application. The amount of content that theplayer application is able to receive, decode, render, and/or play mayvary over a period of time. For instance, the complexity of the contentbeing transmitted may vary. Additionally, the available resources of theplayer device for decoding, rendering, and/or playing may vary overtime. Moreover, the bandwidth of the communication connection by whichthe player device receives the content may vary over time. Due to thevariance of these factors over time, the player application may monitorcontent as it is received and may signal the content retransmitter toalter various encoding parameters for future portions of content.

For example, a player application may utilize various methods forresponding to changes in the bandwidth of the associated communicationconnection. One such method handles changes in bandwidth by signalingthe content retransmitter to alter the frame rate and/or streaming bitrate utilized to encode the content, effectively changing the resolutionof the received content.

However, although a decrease in the resolution of the received contentmay be necessary or useful due to reasons such as limitations inbandwidth, the decreased resolution of the received content should notbe reduced so far as to lack acceptable quality for viewing. Forexample, the decreased resolution may be so low that it causesunacceptable compression artifacts in the played content. Thesecompression artifacts may include ringing, contouring, posterizing,staircase noise along curving edges, blockiness in busy regions (alsoknown as “quilting” or “checkerboarding”), picture break-up, ghostimaging effect, mosquito noise, and so on. When a user utilizing aplayer application views playing content of a lower resolution than aminimum acceptable resolution, the user may become so dissatisfied withthe quality of the playing content that they cease viewing. As a resultof such dissatisfactory experiences, the user may avoid utilizing theplayer application in future.

The present disclosure discloses systems, methods, and computer programproducts for handling disruption in content streams received at a playerdevice from a content retransmitter. A player application executing on aplayer device may receive content encoded at a first resolution levelfrom a content retransmitter via a communication connection. The playerapplication may monitor the bandwidth of the communication connectionduring receipt of the encoded content. When the bandwidth rises above ordecreases below various threshold values corresponding to variousresolution levels, the player application may signal the contentretransmitter to appropriately increase or decrease the resolution forencoding of future portions of the content. The player application mayalso locate substitute content that is related to the received contentand obtain such substitute content. When the player application signalsthe content retransmitter to decrease the resolution of the content to aresolution level below a minimum threshold resolution level, the playerapplication may play the substitute content instead of the receivedcontent. Therefore, although the player application may play substitutecontent that is related to the user's desired content when the user'sdesired content is of an unacceptable quality, the user may continueutilizing the player application to view the related substitute contentinstead of becoming dissatisfied with unacceptable quality content.Hence the user may spend more time utilizing the player application.

FIG. 1 is a block diagram illustrating a system 100 for handlingdisruption in content streams received at a player device from a contentretransmitter. The system 100 includes a player device 101, a contentretransmitter 102, one or more content receivers 104, one or morecontent providers 105, and one or more content servers 107. The playerdevice may be communicably coupled to the content retransmitter and/orthe content server via one or more transmission media 103 (which mayinclude any kind of wired or wireless transmission media such asatellite connection, an Internet connection, a cellular connection, alocal area network connection, a Bluetooth™ connection, a WiFiconnection, a HornePlug™ connection, and so on). The content receiverlikewise may be communicably coupled to the content provider via one ormore transmission media 106.

The player device 101 may be a computing device such as a cellulartelephone, a laptop computer, a desktop computer, a personal digitalassistant, a tablet computer, a mobile computer, and so on. The playerdevice 101 may include one or more processing units 109, one or morestorage media 110, one or more input/output devices 111 (such as akeyboard, a keypad, a touch screen, a mouse, a button, a track pad, adisplay screen, a speaker, and so on), and/or one or more communicationcomponents 112. The storage media may be any non-transitorymachine-readable medium and may take the form of, but is not limited to,a: magnetic storage medium (e.g., floppy diskette, video cassette, andso on); optical storage medium (e.g., CD-ROM); magneto-optical storagemedium; read only memory (ROM); random access memory (RAM); erasableprogrammable memory (e.g., EPROM and EEPROM); flash memory; and so on.The processing unit may execute instructions stored in the storagemedium in order to implement a player application. The playerapplication may receive encoded content from the content retransmitter102 via the communication component and may decode, render, and/or playsuch content utilizing the input/output device(s).

The content retransmitter 102 also may include one or more processingunits 113, one or more storage media 114 (which may be anynon-transitory machine-readable storage media), one or more input/outputcomponents 115, and/or one or more communication components 116. Theprocessing unit may execute instructions stored in the storage medium inorder to receive content from the content receiver 104 utilizing theinput/output component, encode such content according to variousencoding parameters, and retransmit the encoded content to the playerdevice 101 via the communication component.

The content receiver 104 may be any kind of content receiver; such as aset top box, a cable box, a television receiver, a digital videorecorder, a cellular telephone, a laptop computer, a desktop computer, amobile computer, a DVD player, and so on. The content receiver mayinclude one or more processing units 117, one or more storage media 118(which may be any non-transitory machine-readable storage media), one ormore input/output components, and one or more communication components120 a The content receiver may receive content (such as one or moretelevision programs, movies, video on demand programs, an so on) fromthe content provider 105 (which may be any kind of content provider suchas a satellite television provider, a cable television provider, anInternet service provider, a video on demand provider, a DVD retailer,and so on) via the communication component. The processing unit of thecontent receiver may execute instructions stored in the storage mediumto in order to store content received from the content provider in thestorage medium, present the received and/or stored content on anassociated presentation device 108, transmit the received and/or storedcontent to the content retransmitter 102 via the input/output component,and so on.

While the player application receives encoded content from the contentretransmitter 102, the player application may monitor the bandwidth ofthe communication connection utilized via the communication component112 to receive the encoded content. In some implementations, the playerapplication may monitor the bandwidth by monitoring the number of framesthat are dropped during receiving, decoding, rendering, and/or playingthe encoded content; measuring the number of bits and/or received over aperiod of time; and so on. The player application may utilize variousmethods for responding to changes in the bandwidth and may signal thecontent retransmitter to alter the resolution level (such as by alteringthe frame rate and/or the streaming bit rate) utilized to encode futureportions of the content.

By way of example, if received content is encoded at a high definitionresolution mode and bandwidth is less than 200 kilobits per second(kbps) but greater than 100 kbps, the player application may signal thecontent retransmitter to decrease the resolution level utilized toencode future portions to a standard definition resolution mode. In thisexample, the high definition resolution mode may be video graphics arrayresolution, which may be 480p (progressive scan), and the standarddefinition resolution mode may be quarter video graphics (QVGA) arrayresolution, which may be 240i (interlaced). Subsequently, if thebandwidth is no longer less than 200 kilobits per second (kbps), theplayer application may signal the content retransmitter to increase theresolution level utilized to encode future portions to the highdefinition resolution mode. However, if subsequently the bandwidth fallsbelow 100 kbps, the player application may signal the contentretransmitter to decrease the resolution level utilized to encode futureportions to a low definition resolution mode. The low definitionresolution mode may be a quarter-QVGA resolution, which may be 120p.

Additionally, the player application may locate and obtain substitutecontent which is not identical to the received content, but is relatedto the received content. For example, if the received content is videoof a news show from a particular television station, substitute contentmay be a different news show from a different television station. Theplayer application may locate substitute content by determining one ormore characteristics of the content and searching available contentbased on the one or more characteristics. The characteristics mayinclude a type of the content, a description of the content, a rating ofthe content, a title of the content, and so on The player applicationmay search available content of the player device 101 and/or the contentserver 107; which may be a content provider such as the content provider105, an Internet search engine, a content database, and so on. In someimplementations, the content server may be maintained by a third party.Once the substitute content is located in the available content, theplayer application may retrieve it. The search of available content maybe guided by one or more user preferences regarding substitute content.When the player application signals the content retransmitter 102 todecrease the resolution to a resolution level that is below a minimumthreshold resolution level, the player application may play thesubstitute content instead of the received content. Subsequently, whenthe player application signals the content retransmitter to increase theresolution to a resolution level that is not below the minimum thresholdresolution level, the player application may return to playing thereceived content. For example, the minimum threshold resolution levelmay be the SD mode. When the player application signals the contentretransmitter to decrease the resolution to LD mode, the playerapplication may play the substitute content instead of the receivedcontent.

In some implementations, the player application may periodically locateand obtain substitute content when receiving content from the contentretransmitter 102 even before the player application signals the contentretransmitter to decrease the resolution to a resolution level that isbelow the minimum threshold resolution level. In such implementations,the player application may record the substitute content in the storagemedium 110 so that it is subsequently available when the playerapplication signals the content retransmitter to decrease the resolutionto a resolution level that is below the minimum threshold resolutionlevel. In other implementations, when the player application signals thecontent retransmitter 102 to decrease the resolution to a resolutionlevel that is below the minimum threshold resolution level, the playerapplication may then locate and obtain the related substitute content toplay instead of the received content.

In various implementations, the player application may switch betweenplaying the received content and substitute content without userinteraction. However, in other implementations, the player applicationmay prompt a user before switching from playing received content tosubstitute content, substitute content to received content, and so on.In such implementations, if the prompted user does not enter input viathe input/output device(s) 111, the player application may continue toplay whichever content is currently being played regardless of thecurrent resolution level, bandwidth, and so on.

Although the transmission media 103 and 106 are illustrated anddescribed as two separate transmission media, it should be understoodthat in various implementations transmission media may be one or moreconnected or unconnected transmission media.

FIGS. 2A and 2B illustrate a method 200 for handling disruption incontent streams received at a player device from a contentretransmitter. The method 200 may be performed by a player applicationexecuted by the player device 101 of FIG. 1. The flow begins at block201 and proceeds to block 202 where the player application receivescontent from the content retransmitter 102. The flow then proceeds toblock 203 where the player application determines whether or not topreemptively obtain substitute content related to the received contentbased on one or more determined characteristics of the received content.The player application may preemptively obtain substitute content sothat it is readily available instead of obtaining the substitute contentwhen it is needed. If so, the flow proceeds to block 204. Otherwise, theflow proceeds to block 207.

At block 204, the player application determines one or morecharacteristics of the received content. The flow then proceeds to block205 where the player application locates substitute content thatincludes the one or more characteristics. Next, the flow proceeds toblock 206 where the player application obtains the located substitutecontent before the flow proceeds to block 207.

At block 207, the player application monitors the bandwidth of thecommunication connection utilized to receive the content. The flow thenproceeds to block 208. At block 208, the player application determineswhether or not to signal the content retransmitter 102 to increase theresolution level for encoding future portions of the content. If so, theflow proceeds to block 222. Otherwise, the flow proceeds to block 209.

At block 209, after the player application determined not to signal thecontent retransmitter to increase the resolution level, the playerapplication determines whether or not to signal the contentretransmitter 102 to decrease the resolution level for encoding futureportions of the content. If not, the flow proceeds to block 210 wherethe player application plays the received content before the flowreturns to block 202. Otherwise, the flow proceeds to block 211 wherethe player application signals the content retransmitter to decrease theresolution level. The flow then proceeds to block 212 where the playerapplication determines whether or not the decreased resolution level isbelow the minimum threshold resolution level. If not, the flow proceedsto block 210. Otherwise, the flow proceeds to block 213.

At block 213, the player application determines whether or not to obtainsubstitute content related to the received content. If so, the flowproceeds to block 214. Otherwise, the flow proceeds to block 217. Atblock 214, the player application determines one or more characteristicsof the received content. The flow then proceeds to block 215 where theplayer application locates substitute content that includes the one ormore characteristics. Next, the flow proceeds to block 216 where theplayer application obtains the located substitute content before theflow proceeds to block 217.

At block 217, the player application determines whether or not to playobtained substitute content. If not, the flow proceeds to block 210where the player application plays the received content. Otherwise, theflow proceeds to block 218 where the player application plays theobtained substitute content. Next, the flow proceeds to block 219 wherethe player application monitors the bandwidth of the communicationconnection utilized to receive the content. The flow then proceeds toblock 220 where the player application determines if the bandwidth hasincreased such that the player application signals the contentretransmitter 102 to increase the resolution level to a level that isnot below the minimum resolution level. If not, the flow returns toblock 218 where the player application continues playing the substitutecontent. Otherwise, the flow proceeds to block 221.

At block 221, the player application determines whether or not to playthe received content instead of the substitute content. If so, the flowproceeds to block 210 where the player application plays the receivedcontent. Otherwise, the flow returns to block 218 where the playerapplication continues playing the substitute content.

At block 222, after the player application determines to signal thecontent retransmitter 102 to increase the resolution level for encodingfuture portions of the content, the player application signals thecontent retransmitter to increase the resolution level. The flow thenproceeds to block 210 where the player application plays the receivedcontent before the flow returns to block 202.

Returning to FIG. 1, when the player application determines to playsubstitute content instead of received content, the player applicationmay signal the content retransmitter 102 to record the content in thestorage medium 114 and/or the content receiver 104 to store the contentin the storage medium 118. Thus, the content may be available to beprovided from the storage medium 113 and/or the storage medium 118 whenthe bandwidth of the communication connection improves.

When the player application locates substitute content related to thereceived content, the player application may determine one or morecharacteristics of the received content in a number of ways. Forexample, the player application may analyze metadata that is included inthe received content such as metadata stored in a vertical blankinginterval; analyze metadata that describes the received content such asmetadata included in one or more electronic programming guides; analyzecaptioning data for the received content such as captioning of the audioportion of the received content; performing audio recognition on thereceived content to identify words that are spoken in the receivedcontent; perform image recognition to identify persons, places, things;and so on that are present in the received content, and so on. Theplayer application may then locate related substitute content bysearching for available content that includes one or more of thedetermined characteristics of the received content. For example, ifmetadata included in the received content describes that the receivedcontent is a historical program about pirates, the player applicationmay search available content for a different historical program aboutpirates.

When the player application locates substitute content related to thereceived content, the player application may make use of one or moreuser preferences (which may be stored in the storage medium 110) inaddition to the determined characteristics of the received content toguide searching. These user preferences may include a variety of userspecified rules as to what available content to select as substitutesfor received content. Such preferences may include rules concerninglocations to search for available content, rules concerning contentratings of available content, rules concerning relevance of contentdescription comparisons, and so on. By way of a first example, a rulemay specify to search available content of the player device 101 beforesearching available content via an Internet search engine. By way of asecond example, a rule may specify not to select content with a ratingindicating that the content includes graphic violence. By way of a thirdexample, a rule may specify that multiple exact words must match whencomparing content descriptions in order for available content to beconsidered relevant.

FIGS. 3A-3C illustrate sample display screens 300A-300C that may bedisplayed by the player device 101 while the player application performsthe method 200. FIG. 3A is a sample display screen 300A depicting acricket match. A player application executing on the player device mayreceive encoded content from the content retransmitter 102 and maydecode, render, and play the content on an input/output device 111 suchas an LCD (liquid crystal display) screen incorporated into the playerdevice. Thus, the sample display screen 300A depicting the cricket matchmay be displayed on the LCD screen.

While playing the received content, e.g., the cricket match, the playerapplication may analyze captioning data included in the content todetermine that the received content relates to cricket. The playerapplication may then search the content server 107 for available contentrelated to cricket. For example, as a result of the search, the playerapplication may locate and obtain substitute content that includes asports news show that discusses cricket games and the current scores ofsuch games. The player application may store the obtained substitutecontent in the storage medium 110 so that it is available when needed.

Further, during play, the player application may determine that thebandwidth of the connection utilized to receive the content hasdecreased such that the player application signals the contentretransmitter to decrease the resolution level of future portions of thecontent to a level below a minimum acceptable level. As such the playerapplication may play the substitute content related to the sports newsshow stored in the storage medium instead of the received content of thecricket game, as depicted by sample display screen 300B in FIG. 3B.Subsequently, when the player application determines that the bandwidthof has increased such that the player application signals the contentretransmitter to increase the resolution level to a level not below theminimum acceptable level, the player application may resume playing thereceived content including the cricket match, as depicted by sampledisplay screen 300A in FIG. 3A.

However, the sports news show may include the current score of thecricket game included in the received content. Thus, if the sports newsshow is presented as substitute content instead of the cricket game, thecricket game may be spoiled for the user. As such the user may havespecified in user preferences not to select substitute content thatincludes sporting scores when selecting substitute content for sportingevent content. Therefore, in this case, when the player applicationsearched the content server 107 for available content related tocricket, the player application may not have selected the sporting newsshow as the substitute content based on the user preferences. Instead,the player application may locate and obtain substitute content thatincludes a baseball game as both cricket and baseball are sportingevents. When the substitute content including the baseball game is thenplayed instead of the received content including the cricket match, thesample display screen 300C in FIG. 3C may thusly be displayed.

In the present disclosure, the methods disclosed may be implemented assets of instructions or software readable by a device. Further, it isunderstood that the specific order or hierarchy of steps in the methodsdisclosed are examples of sample approaches. In other embodiments, thespecific order or hierarchy of steps in the method can be rearrangedwhile remaining within the disclosed subject matter. The accompanyingmethod claims present elements of the various steps in a sample order,and are not necessarily meant to be limited to the specific order orhierarchy presented.

The described disclosure may be provided as a computer program product,or software, that may include a non-transitory machine-readable mediumhaving stored thereon instructions, which may be used to program acomputer system (or other electronic devices) to perform a processaccording to the present disclosure. A non-transitory machine-readablemedium includes any mechanism for storing information in a form (e.g.,software, processing application) readable by a machine (e.g., acomputer). The non-transitory machine-readable medium may take the formof, but is not limited to, a: magnetic storage medium (e.g., floppydiskette, video cassette, and so on); optical storage medium (e.g.,CD-ROM); magneto-optical storage medium; read only memory (ROM); randomaccess memory (RAM); erasable programmable memory (e.g., EPROM andEEPROM); flash memory; and so on.

It is believed that the present disclosure and many of its attendantadvantages will be understood by the foregoing description, and it willbe apparent that various changes may be made in the form, constructionand arrangement of the components without departing from the disclosedsubject matter or without sacrificing all of its material advantages.The form described is merely explanatory, and it is the intention of thefollowing claims to encompass and include such changes.

While the present disclosure has been described with reference tovarious embodiments, it will be understood that these embodiments areillustrative and that the scope of the disclosure is not limited tothem. Many variations, modifications, additions, and improvements arepossible. More generally, embodiments in accordance with the presentdisclosure have been described in the context of particular embodiments.Functionality may be separated or combined in blocks differently invarious embodiments of the disclosure or described with differentterminology. These and other variations, modifications, additions, andimprovements may fall within the scope of the disclosure as defined inthe claims that follow.

1. A method for handling disruption in content streams received at aplayer device from a content retransmitter, the method comprising: aplayer device monitoring bandwidth of a communication connectionutilized to receive the first portion of content at the player devicefrom the content retransmitter wherein the first portion of content isencoded at a first resolution level; and the player device signaling thecontent retransmitter to encode a second portion of the content at asecond resolution level when the player device determines that thebandwidth of the communication connection has decreased below athreshold value, wherein the player device determines that the bandwidthof the communication connection has decreased below the threshold valueby measuring a number of frames of the first portion of the contentdropped by the player device during at least one of decoding the firstportion of the content or rendering the first portion of the content. 2.The method of claim 1, further comprising signaling contentretransmitter to record at least the second portion of the content. 3.The method of claim 1, wherein the player device determines that thebandwidth of the communication connection has decreased below thethreshold value by measuring a number of frames of the first portion ofthe content dropped by the player device during at least one of decodingthe first portion of the content or rendering the first portion of thecontent.
 4. The method of claim 1, further comprising: after the playerdevice signals the content retransmitter to encode the second portion ofthe content at the second resolution level, signaling the contentretransmitter, utilizing the player device, to encode a third portion ofthe content at a third resolution level when the player devicedetermines that the bandwidth of the communication connection hasincreased above the threshold value.
 5. A player device comprising: atleast one communication component that receives a first portion ofcontent from the content retransmitter via at least one communicationconnection where in the first portion of the content is encoded at afirst resolution level; and at least one processing unit, communicablycoupled to the at least one communication component, that monitors bythe player device, bandwidth of the communication connection; whereinthe at least one processing signals the content retransmitter via the atleast one communication connection to encode a second portion of thecontent at a second resolution level when the at least one processingunit determines that the bandwidth has decreased below a threshold valueand wherein the at least one processing unit determines that thebandwidth of the communication connection has decreased below thethreshold value by measuring a number of frames of the first portion ofthe content dropped by the player device during at least one of decodingthe first portion of the content or rendering the first portion of thecontent.
 6. The player device of claim 5, wherein the at least oneprocessing unit signals the content retransmitter via the at least onecommunication connection to record at least a portion of the contentwhen the second resolution level is below the minimum thresholdresolution level.
 7. The player device of claim 5, wherein at least onepresentation device is incorporated into the player device.
 8. Anon-transitory computer-readable medium having computer processorexecutable instructions thereon that, when executed, cause at least onecomputer processor to: monitor by a player device bandwidth of acommunication connection utilized to receive the first portion ofcontent at the player device from the content retransmitter wherein thefirst portion of content is encoded at a first resolution level;determine that the bandwidth of the communication connection hasdecreased below a threshold value by measuring a number of frames of thefirst portion of the content dropped by the player device during atleast one of decoding the first portion of the content or rendering thefirst portion of the content; and signal by the player device, thecontent retransmitter to encode a second portion of the content at asecond resolution level when the player device determines that thebandwidth of the communication connection has decreased below athreshold value.
 9. The non-transitory computer-readable medium of claim8, wherein at least one presentation device is incorporated into theplayer device.